// Copyright © SixtyFPS GmbH <info@slint-ui.com>
// SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-commercial

//include_path: ../../helper_components
import { UseStruct , ExportedStruct } from "export_structs.slint";
TestCase := Rectangle {
    property <ExportedStruct> exp: { d: 3001, e: {a: 2001} };
    u := UseStruct {
        exp: { d: 3002, e: {a: 2002} };
        nexp: { b: 3003, c: {a: 2003} };
    }
    property<int> p1: u.nexp.c.a;
}
/*

```cpp
auto handle = TestCase::create();
const TestCase &instance = *handle;
assert_eq(instance.get_p1(), 2003);
assert_eq(instance.get_exp().e.a, 2001);
```

```rust
let instance = TestCase::new().unwrap();
assert_eq!(instance.get_p1(), 2003);
assert_eq!(instance.get_exp().e.a, 2001);
```

```js
var instance = new slint.TestCase({});
assert.equal(instance.p1, 2003);
assert.equal(instance.exp.e.a, 2001);
```

*/
